package com.angel.health;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class BuzCprExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public BuzCprExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCodeIsNull() {
            addCriterion("code is null");
            return (Criteria) this;
        }

        public Criteria andCodeIsNotNull() {
            addCriterion("code is not null");
            return (Criteria) this;
        }

        public Criteria andCodeEqualTo(String value) {
            addCriterion("code =", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotEqualTo(String value) {
            addCriterion("code <>", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThan(String value) {
            addCriterion("code >", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThanOrEqualTo(String value) {
            addCriterion("code >=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThan(String value) {
            addCriterion("code <", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThanOrEqualTo(String value) {
            addCriterion("code <=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLike(String value) {
            addCriterion("code like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotLike(String value) {
            addCriterion("code not like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeIn(List<String> values) {
            addCriterion("code in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotIn(List<String> values) {
            addCriterion("code not in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeBetween(String value1, String value2) {
            addCriterion("code between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotBetween(String value1, String value2) {
            addCriterion("code not between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andCustomerIdIsNull() {
            addCriterion("customer_id is null");
            return (Criteria) this;
        }

        public Criteria andCustomerIdIsNotNull() {
            addCriterion("customer_id is not null");
            return (Criteria) this;
        }

        public Criteria andCustomerIdEqualTo(Integer value) {
            addCriterion("customer_id =", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotEqualTo(Integer value) {
            addCriterion("customer_id <>", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdGreaterThan(Integer value) {
            addCriterion("customer_id >", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("customer_id >=", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdLessThan(Integer value) {
            addCriterion("customer_id <", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdLessThanOrEqualTo(Integer value) {
            addCriterion("customer_id <=", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdIn(List<Integer> values) {
            addCriterion("customer_id in", values, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotIn(List<Integer> values) {
            addCriterion("customer_id not in", values, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdBetween(Integer value1, Integer value2) {
            addCriterion("customer_id between", value1, value2, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotBetween(Integer value1, Integer value2) {
            addCriterion("customer_id not between", value1, value2, "customerId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdIsNull() {
            addCriterion("institutions_id is null");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdIsNotNull() {
            addCriterion("institutions_id is not null");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdEqualTo(Integer value) {
            addCriterion("institutions_id =", value, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdNotEqualTo(Integer value) {
            addCriterion("institutions_id <>", value, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdGreaterThan(Integer value) {
            addCriterion("institutions_id >", value, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("institutions_id >=", value, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdLessThan(Integer value) {
            addCriterion("institutions_id <", value, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdLessThanOrEqualTo(Integer value) {
            addCriterion("institutions_id <=", value, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdIn(List<Integer> values) {
            addCriterion("institutions_id in", values, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdNotIn(List<Integer> values) {
            addCriterion("institutions_id not in", values, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdBetween(Integer value1, Integer value2) {
            addCriterion("institutions_id between", value1, value2, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andInstitutionsIdNotBetween(Integer value1, Integer value2) {
            addCriterion("institutions_id not between", value1, value2, "institutionsId");
            return (Criteria) this;
        }

        public Criteria andUploadUrlIsNull() {
            addCriterion("upload_url is null");
            return (Criteria) this;
        }

        public Criteria andUploadUrlIsNotNull() {
            addCriterion("upload_url is not null");
            return (Criteria) this;
        }

        public Criteria andUploadUrlEqualTo(String value) {
            addCriterion("upload_url =", value, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlNotEqualTo(String value) {
            addCriterion("upload_url <>", value, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlGreaterThan(String value) {
            addCriterion("upload_url >", value, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlGreaterThanOrEqualTo(String value) {
            addCriterion("upload_url >=", value, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlLessThan(String value) {
            addCriterion("upload_url <", value, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlLessThanOrEqualTo(String value) {
            addCriterion("upload_url <=", value, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlLike(String value) {
            addCriterion("upload_url like", value, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlNotLike(String value) {
            addCriterion("upload_url not like", value, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlIn(List<String> values) {
            addCriterion("upload_url in", values, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlNotIn(List<String> values) {
            addCriterion("upload_url not in", values, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlBetween(String value1, String value2) {
            addCriterion("upload_url between", value1, value2, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadUrlNotBetween(String value1, String value2) {
            addCriterion("upload_url not between", value1, value2, "uploadUrl");
            return (Criteria) this;
        }

        public Criteria andUploadByIsNull() {
            addCriterion("upload_by is null");
            return (Criteria) this;
        }

        public Criteria andUploadByIsNotNull() {
            addCriterion("upload_by is not null");
            return (Criteria) this;
        }

        public Criteria andUploadByEqualTo(String value) {
            addCriterion("upload_by =", value, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByNotEqualTo(String value) {
            addCriterion("upload_by <>", value, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByGreaterThan(String value) {
            addCriterion("upload_by >", value, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByGreaterThanOrEqualTo(String value) {
            addCriterion("upload_by >=", value, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByLessThan(String value) {
            addCriterion("upload_by <", value, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByLessThanOrEqualTo(String value) {
            addCriterion("upload_by <=", value, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByLike(String value) {
            addCriterion("upload_by like", value, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByNotLike(String value) {
            addCriterion("upload_by not like", value, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByIn(List<String> values) {
            addCriterion("upload_by in", values, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByNotIn(List<String> values) {
            addCriterion("upload_by not in", values, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByBetween(String value1, String value2) {
            addCriterion("upload_by between", value1, value2, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andUploadByNotBetween(String value1, String value2) {
            addCriterion("upload_by not between", value1, value2, "uploadBy");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andHospitalIsNull() {
            addCriterion("hospital is null");
            return (Criteria) this;
        }

        public Criteria andHospitalIsNotNull() {
            addCriterion("hospital is not null");
            return (Criteria) this;
        }

        public Criteria andHospitalEqualTo(String value) {
            addCriterion("hospital =", value, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalNotEqualTo(String value) {
            addCriterion("hospital <>", value, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalGreaterThan(String value) {
            addCriterion("hospital >", value, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalGreaterThanOrEqualTo(String value) {
            addCriterion("hospital >=", value, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalLessThan(String value) {
            addCriterion("hospital <", value, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalLessThanOrEqualTo(String value) {
            addCriterion("hospital <=", value, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalLike(String value) {
            addCriterion("hospital like", value, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalNotLike(String value) {
            addCriterion("hospital not like", value, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalIn(List<String> values) {
            addCriterion("hospital in", values, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalNotIn(List<String> values) {
            addCriterion("hospital not in", values, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalBetween(String value1, String value2) {
            addCriterion("hospital between", value1, value2, "hospital");
            return (Criteria) this;
        }

        public Criteria andHospitalNotBetween(String value1, String value2) {
            addCriterion("hospital not between", value1, value2, "hospital");
            return (Criteria) this;
        }

        public Criteria andRecordTimeIsNull() {
            addCriterion("record_time is null");
            return (Criteria) this;
        }

        public Criteria andRecordTimeIsNotNull() {
            addCriterion("record_time is not null");
            return (Criteria) this;
        }

        public Criteria andRecordTimeEqualTo(Date value) {
            addCriterion("record_time =", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeNotEqualTo(Date value) {
            addCriterion("record_time <>", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeGreaterThan(Date value) {
            addCriterion("record_time >", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("record_time >=", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeLessThan(Date value) {
            addCriterion("record_time <", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeLessThanOrEqualTo(Date value) {
            addCriterion("record_time <=", value, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeIn(List<Date> values) {
            addCriterion("record_time in", values, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeNotIn(List<Date> values) {
            addCriterion("record_time not in", values, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeBetween(Date value1, Date value2) {
            addCriterion("record_time between", value1, value2, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRecordTimeNotBetween(Date value1, Date value2) {
            addCriterion("record_time not between", value1, value2, "recordTime");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("remark =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("remark <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("remark >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("remark >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("remark <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("remark <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("remark not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andCprNameIsNull() {
            addCriterion("cpr_name is null");
            return (Criteria) this;
        }

        public Criteria andCprNameIsNotNull() {
            addCriterion("cpr_name is not null");
            return (Criteria) this;
        }

        public Criteria andCprNameEqualTo(String value) {
            addCriterion("cpr_name =", value, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameNotEqualTo(String value) {
            addCriterion("cpr_name <>", value, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameGreaterThan(String value) {
            addCriterion("cpr_name >", value, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameGreaterThanOrEqualTo(String value) {
            addCriterion("cpr_name >=", value, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameLessThan(String value) {
            addCriterion("cpr_name <", value, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameLessThanOrEqualTo(String value) {
            addCriterion("cpr_name <=", value, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameLike(String value) {
            addCriterion("cpr_name like", value, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameNotLike(String value) {
            addCriterion("cpr_name not like", value, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameIn(List<String> values) {
            addCriterion("cpr_name in", values, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameNotIn(List<String> values) {
            addCriterion("cpr_name not in", values, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameBetween(String value1, String value2) {
            addCriterion("cpr_name between", value1, value2, "cprName");
            return (Criteria) this;
        }

        public Criteria andCprNameNotBetween(String value1, String value2) {
            addCriterion("cpr_name not between", value1, value2, "cprName");
            return (Criteria) this;
        }

        public Criteria andHpiIsNull() {
            addCriterion("hpi is null");
            return (Criteria) this;
        }

        public Criteria andHpiIsNotNull() {
            addCriterion("hpi is not null");
            return (Criteria) this;
        }

        public Criteria andHpiEqualTo(String value) {
            addCriterion("hpi =", value, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiNotEqualTo(String value) {
            addCriterion("hpi <>", value, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiGreaterThan(String value) {
            addCriterion("hpi >", value, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiGreaterThanOrEqualTo(String value) {
            addCriterion("hpi >=", value, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiLessThan(String value) {
            addCriterion("hpi <", value, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiLessThanOrEqualTo(String value) {
            addCriterion("hpi <=", value, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiLike(String value) {
            addCriterion("hpi like", value, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiNotLike(String value) {
            addCriterion("hpi not like", value, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiIn(List<String> values) {
            addCriterion("hpi in", values, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiNotIn(List<String> values) {
            addCriterion("hpi not in", values, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiBetween(String value1, String value2) {
            addCriterion("hpi between", value1, value2, "hpi");
            return (Criteria) this;
        }

        public Criteria andHpiNotBetween(String value1, String value2) {
            addCriterion("hpi not between", value1, value2, "hpi");
            return (Criteria) this;
        }

        public Criteria andClinicalIsNull() {
            addCriterion("clinical is null");
            return (Criteria) this;
        }

        public Criteria andClinicalIsNotNull() {
            addCriterion("clinical is not null");
            return (Criteria) this;
        }

        public Criteria andClinicalEqualTo(String value) {
            addCriterion("clinical =", value, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalNotEqualTo(String value) {
            addCriterion("clinical <>", value, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalGreaterThan(String value) {
            addCriterion("clinical >", value, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalGreaterThanOrEqualTo(String value) {
            addCriterion("clinical >=", value, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalLessThan(String value) {
            addCriterion("clinical <", value, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalLessThanOrEqualTo(String value) {
            addCriterion("clinical <=", value, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalLike(String value) {
            addCriterion("clinical like", value, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalNotLike(String value) {
            addCriterion("clinical not like", value, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalIn(List<String> values) {
            addCriterion("clinical in", values, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalNotIn(List<String> values) {
            addCriterion("clinical not in", values, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalBetween(String value1, String value2) {
            addCriterion("clinical between", value1, value2, "clinical");
            return (Criteria) this;
        }

        public Criteria andClinicalNotBetween(String value1, String value2) {
            addCriterion("clinical not between", value1, value2, "clinical");
            return (Criteria) this;
        }

        public Criteria andAssistCheckIsNull() {
            addCriterion("assist_check is null");
            return (Criteria) this;
        }

        public Criteria andAssistCheckIsNotNull() {
            addCriterion("assist_check is not null");
            return (Criteria) this;
        }

        public Criteria andAssistCheckEqualTo(String value) {
            addCriterion("assist_check =", value, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckNotEqualTo(String value) {
            addCriterion("assist_check <>", value, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckGreaterThan(String value) {
            addCriterion("assist_check >", value, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckGreaterThanOrEqualTo(String value) {
            addCriterion("assist_check >=", value, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckLessThan(String value) {
            addCriterion("assist_check <", value, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckLessThanOrEqualTo(String value) {
            addCriterion("assist_check <=", value, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckLike(String value) {
            addCriterion("assist_check like", value, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckNotLike(String value) {
            addCriterion("assist_check not like", value, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckIn(List<String> values) {
            addCriterion("assist_check in", values, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckNotIn(List<String> values) {
            addCriterion("assist_check not in", values, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckBetween(String value1, String value2) {
            addCriterion("assist_check between", value1, value2, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andAssistCheckNotBetween(String value1, String value2) {
            addCriterion("assist_check not between", value1, value2, "assistCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckIsNull() {
            addCriterion("special_check is null");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckIsNotNull() {
            addCriterion("special_check is not null");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckEqualTo(String value) {
            addCriterion("special_check =", value, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckNotEqualTo(String value) {
            addCriterion("special_check <>", value, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckGreaterThan(String value) {
            addCriterion("special_check >", value, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckGreaterThanOrEqualTo(String value) {
            addCriterion("special_check >=", value, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckLessThan(String value) {
            addCriterion("special_check <", value, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckLessThanOrEqualTo(String value) {
            addCriterion("special_check <=", value, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckLike(String value) {
            addCriterion("special_check like", value, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckNotLike(String value) {
            addCriterion("special_check not like", value, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckIn(List<String> values) {
            addCriterion("special_check in", values, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckNotIn(List<String> values) {
            addCriterion("special_check not in", values, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckBetween(String value1, String value2) {
            addCriterion("special_check between", value1, value2, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andSpecialCheckNotBetween(String value1, String value2) {
            addCriterion("special_check not between", value1, value2, "specialCheck");
            return (Criteria) this;
        }

        public Criteria andDiagnosisIsNull() {
            addCriterion("diagnosis is null");
            return (Criteria) this;
        }

        public Criteria andDiagnosisIsNotNull() {
            addCriterion("diagnosis is not null");
            return (Criteria) this;
        }

        public Criteria andDiagnosisEqualTo(String value) {
            addCriterion("diagnosis =", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisNotEqualTo(String value) {
            addCriterion("diagnosis <>", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisGreaterThan(String value) {
            addCriterion("diagnosis >", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisGreaterThanOrEqualTo(String value) {
            addCriterion("diagnosis >=", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisLessThan(String value) {
            addCriterion("diagnosis <", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisLessThanOrEqualTo(String value) {
            addCriterion("diagnosis <=", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisLike(String value) {
            addCriterion("diagnosis like", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisNotLike(String value) {
            addCriterion("diagnosis not like", value, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisIn(List<String> values) {
            addCriterion("diagnosis in", values, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisNotIn(List<String> values) {
            addCriterion("diagnosis not in", values, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisBetween(String value1, String value2) {
            addCriterion("diagnosis between", value1, value2, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andDiagnosisNotBetween(String value1, String value2) {
            addCriterion("diagnosis not between", value1, value2, "diagnosis");
            return (Criteria) this;
        }

        public Criteria andTreatmentIsNull() {
            addCriterion("treatment is null");
            return (Criteria) this;
        }

        public Criteria andTreatmentIsNotNull() {
            addCriterion("treatment is not null");
            return (Criteria) this;
        }

        public Criteria andTreatmentEqualTo(String value) {
            addCriterion("treatment =", value, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentNotEqualTo(String value) {
            addCriterion("treatment <>", value, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentGreaterThan(String value) {
            addCriterion("treatment >", value, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentGreaterThanOrEqualTo(String value) {
            addCriterion("treatment >=", value, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentLessThan(String value) {
            addCriterion("treatment <", value, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentLessThanOrEqualTo(String value) {
            addCriterion("treatment <=", value, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentLike(String value) {
            addCriterion("treatment like", value, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentNotLike(String value) {
            addCriterion("treatment not like", value, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentIn(List<String> values) {
            addCriterion("treatment in", values, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentNotIn(List<String> values) {
            addCriterion("treatment not in", values, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentBetween(String value1, String value2) {
            addCriterion("treatment between", value1, value2, "treatment");
            return (Criteria) this;
        }

        public Criteria andTreatmentNotBetween(String value1, String value2) {
            addCriterion("treatment not between", value1, value2, "treatment");
            return (Criteria) this;
        }

        public Criteria andSurgeryIsNull() {
            addCriterion("surgery is null");
            return (Criteria) this;
        }

        public Criteria andSurgeryIsNotNull() {
            addCriterion("surgery is not null");
            return (Criteria) this;
        }

        public Criteria andSurgeryEqualTo(String value) {
            addCriterion("surgery =", value, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryNotEqualTo(String value) {
            addCriterion("surgery <>", value, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryGreaterThan(String value) {
            addCriterion("surgery >", value, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryGreaterThanOrEqualTo(String value) {
            addCriterion("surgery >=", value, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryLessThan(String value) {
            addCriterion("surgery <", value, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryLessThanOrEqualTo(String value) {
            addCriterion("surgery <=", value, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryLike(String value) {
            addCriterion("surgery like", value, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryNotLike(String value) {
            addCriterion("surgery not like", value, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryIn(List<String> values) {
            addCriterion("surgery in", values, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryNotIn(List<String> values) {
            addCriterion("surgery not in", values, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryBetween(String value1, String value2) {
            addCriterion("surgery between", value1, value2, "surgery");
            return (Criteria) this;
        }

        public Criteria andSurgeryNotBetween(String value1, String value2) {
            addCriterion("surgery not between", value1, value2, "surgery");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}